cmake_minimum_required(VERSION 3.31)

project(configure_file VERSION 1.1.2 LANGUAGES C CXX)

set(CMAKE_CXX_STANDARD 20)

# 将当前目录下source.txt的内容拷贝到target.txt目标文件中
configure_file(
    ${CMAKE_CURRENT_SOURCE_DIR}/config.h.in  # 源文件
    ${CMAKE_CURRENT_SOURCE_DIR}/config.h  # 目标文件
#    COPYONLY # 仅复制，不替换
    @ONLY   # 仅替换由@@包裹的变量 ${}不进行替换，而进行原样输出
)

# 项目名称
message(STATUS ${PROJECT_NAME})

# 项目版本号
message(STATUS ${PROJECT_VERSION})

add_executable(configure_file main.cpp)


